<?php

declare(strict_types=1);

namespace App\CustHub\Dto;

use App\Common\Dto\DataObject;

class SendRecordProducersDto extends DataObject
{
    /**
     * 主账号ID
     * @var int
     */
    private int $mainUid;

    /**
     * 子账号ID
     * @var int
     */
    private int $uid;

    /**
     * 任务或者方案ID
     * @var int
     */
    private int $taskId;

    /**
     * 子任务ID
     * @var int
     */
    private int $subTaskId = 0;

    /**
     * 类型
     * @var int
     */
    private int $type;

    /**
     * 发送记录数据
     * @var array
     */
    private array $recordData;


    /**
     * 是否最后一个子任务
     * @var bool
     */
    private bool $isLastSubTask = true;

    /**
     * 是否是群
     * @var bool
     */
    private int $isRoom=0;

    /**
     * 是否立即发送
     * @var bool
     */
    private bool $isSendNow = false;

    public function getTaskId(): int
    {
        return $this->taskId;
    }

    public function setTaskId(int $taskId): SendRecordProducersDto
    {
        $this->taskId = $taskId;
        return $this;
    }

    public function getSubTaskId(): int
    {
        return $this->subTaskId;
    }

    public function setSubTaskId(int $subTaskId): SendRecordProducersDto
    {
        $this->subTaskId = $subTaskId;
        return $this;
    }

    public function getType(): int
    {
        return $this->type;
    }

    public function setType(int $type): SendRecordProducersDto
    {
        $this->type = $type;
        return $this;
    }

    public function getRecordData(): array
    {
        return $this->recordData;
    }

    public function setRecordData(array $recordData): SendRecordProducersDto
    {
        $this->recordData = $recordData;
        return $this;
    }

    public function isSendNow(): bool
    {
        return $this->isSendNow;
    }

    public function setIsSendNow(bool $isSendNow): SendRecordProducersDto
    {
        $this->isSendNow = $isSendNow;
        return $this;
    }

    public function getMainUid(): int
    {
        return $this->mainUid;
    }

    public function setMainUid(int $mainUid): SendRecordProducersDto
    {
        $this->mainUid = $mainUid;
        return $this;
    }

    public function getUid(): int
    {
        return $this->uid;
    }

    public function setUid(int $uid): SendRecordProducersDto
    {
        $this->uid = $uid;
        return $this;
    }

    public function setIsLastSubTask(bool $isLastSubTask)
    {
        $this->isLastSubTask = $isLastSubTask;
        return $this;
    }

    public function setIsRoom(int $isRoom)
    {
        $this->isRoom = $isRoom;
        return $this;
    }
}